package main

import "fmt"

func main() {
	key := ""
	loop := true

	balance := 10000.0
	money := 0.0
	note := ""
	detail := "收支\t账户金额\t收支金额\t说	明"
	flag := false
	for {
		fmt.Println("-------收支记账本------")
		fmt.Println("		1 收支明细	")
		fmt.Println("		2 登记收入	")
		fmt.Println("		3 登记支出	")
		fmt.Println("		4 退出	")
		fmt.Println("请选择(1-4)")
		fmt.Scanln(&key)

		switch key {
		case "1":
			fmt.Println("-----当前收支明细-----")
			if !flag {
				fmt.Println("当前没有收支明细，来一笔吧。。。")
			} else {
				fmt.Println(detail)
			}
		case "2":
			fmt.Println("本次收入金额：")
			fmt.Scanln(&money)
			balance += money
			fmt.Println("本次收入说明：")
			fmt.Scanln(&note)
			// 收支	账户金额	收支金额	说	明
			detail += fmt.Sprintf("\n收入\t%v\t%v\t%v", balance, money, note)
			flag = true
		case "3":
			fmt.Println("本次支出金额：")
			fmt.Scanln(&money)
			if money > balance {
				fmt.Println("余额补助")
				break
			}
			balance -= money
			fmt.Println("本次支出说明：")
			fmt.Scanln(&note)
			detail += fmt.Sprintf("\n支出\t%v\t%v\t%v", balance, money, note)
			flag = true
		case "4":
			fmt.Println("确定退出吗？ y/n")
			choice := ""
			for {
				fmt.Scanln(&choice)
				if choice == "y" || choice == "n" {
					break
				}
				fmt.Println("输入有误，重新输入 y/n")
			}
			if choice == "y" {
				loop = false
			}
		default:
			fmt.Printf("请输入正确选项...")

		}
		if !loop {
			break
		}
	}
	fmt.Printf("你退出了...")
}
